<?php
/**
 * <https://y.st./>
 * Copyright (C) 2017 //y.st. <mailto:copyright@y.st>
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <https://www.gnu.org./licenses/>.
**/

$xhtml = array(
	'title' => 'Free software',
	'subtitle' => 'Vital for trust, privacy, security, freedom, education, competition, and progress',
	'copyright year' => '2017',
	'body' => <<<END
<p>Free software is absolutely vital for a number of reasons. Some people focus on only some reasons, then claim that people that focus on other reasons are missing the point. However, I think that in cases such as these, both sides are missing part of the point. We should all be insisting on free software and we don&apos;t need the same reason to do so. There are plenty of reasons to support free software and almost no reasons to oppose it.</p>
<h2>Trust</h2>
<p>Companies have proven time and time again that they can&apos;t be trusted. They frequently build malicious features into their works to pad their bottom lines. But what if there was a way to know that you could trust the software that you run? What if the human-readable source code was available for public audit and commentary? With free software, you have that. You don&apos;t even need to know how to read the code yourself. If there&apos;s something particularly malicious in the code and there is a large enough user base, <strong>*someone*</strong> will notice and publicize it. Simply having the source code available is of benefit to everyone, even those that can&apos;t make direct use of it.</p>
<h2>Privacy</h2>
<p>Often times, proprietary software vendors build spyware into their software. A great example of this is the spyware that Microsoft incorporated into Windows 10. There&apos;s no way to even turn it off and it&apos;s been proven to bypass your proxy settings. It sends your private data back to Microsoft, which is an invasion of privacy and is just plain creepy. Let&apos;s pretend for a moment that you fully trust Microsoft with your data though. What then? Because Microsoft doesn&apos;t care about you, they set up their operating system to send back some of your data <a href="http://arstechnica.co.uk./information-technology/2015/08/even-when-told-not-to-windows-10-just-cant-stop-talking-to-microsoft/">using unencrypted $a[HTTP]</a>. Not only is Microsoft able to see anything that they choose to on your computer, anyone listening in can perform a man-in-the-middle attack and see all of that information as well! With Windows 10, you get no privacy with your own machine.</p>
<p>With free software, this is much less of an issue. When the source code is widely available, someone will notice and point out when the software&apos;s doing something that invades the users&apos; privacy. Furthermore, if the software is important enough, people with fork the code and remove the malicious feature. The malicious version of the software will lose popularity and will collapse.</p>
<h2>Security</h2>
<p>Security and privacy go hand-in-hand. If your machine is constantly sending your data back home to the developer of the software that you use, I&apos;d argue that that&apos;s not only a breach of privacy and a breach of trust, but also a breach of security. However, let&apos;s put that aside and instead focus on the exploitation of vulnerabilities in the system, both intended and unintended.</p>
<h3>Back doors</h3>
<p>Sometimes, software developers into their software. In doing so, they provide themselves with access to all or part of your machine. Clearly, this is a breach of your security, but it doesn&apos;t stop there. Malicious computer crackers are often very skilled at locating and exploiting these back doors. By building these back doors into their software, developers not only allow themselves access to your machine, but also allow access to your machine by any number of unknown malicious parties. Back doors are quickly spotted by users and removed from software when the source code is available to the public.</p>
<h3>Security bugs</h3>
<p>Security bugs happen, both in free and nonfree software. But how easy are they to find and get fixed? When the source code is available, any user that notices the bug, has the skills, and has the time can fix it. Often times, the developers are more than willing to take bug patches from users that take the time and effort to fix these problems. Critical bug patches are often released within hours of a bug getting found simply because many users want the bug gone and peace of mind restored.</p>
<p>I&apos;m not saying that critical security bugs are always found right away in free software. We all know about the <a href="https://heartbleed.com./">Heartbleed</a> incident, which went undiscovered for about two years. However, when critical bugs are discovered, fixes come almost right away.</p>
<h2>Freedom</h2>
<p>With free software, you have freedom. This should go without saying. If software doesn&apos;t quite work the way that you want it to, you may modify it. You may write your own bug fixes if others aren&apos;t writing them fast enough, you can deploy custom versions, and you may do all your computing your way. There&apos;s very little limit to what you can do with the software that you use when it&apos;s free.</p>
<h2>Education</h2>
<p>Why is proprietary software even <strong>*used*</strong> in the education system? Proprietary software usually doesn&apos;t allow you to see the source code and often forbids reverse engineering. In other words, proprietary software <strong>*forbids you from learning how it functions*</strong>. Is this really conductive to education? I don&apos;t thing so. It can be argued that schools teach about proprietary software because that&apos;s what people will use when they get a job, but that&apos;s a bit misleading. A big part of what software people choose to use is based on what they know. If schools taught about free software instead of proprietary software, we&apos;d see a lot more free software in use by businesses.</p>
<h2>Competition</h2>
<p>One of the biggest problems with proprietary software is the monopolies and vendor lock-in that it creates. This leads to price gouging and often results in users giving in and accepting all of the user-abusing features that the software comes with, such as back doors and spyware. After all, what other choice do users have? However, with free software, it&apos;s easy to develop alternatives. Projects can be forked and user-abusing features can be removed. Custom interfaces can be provided, new features can be added, and users can switch between alternatives as they see fit. Users aren&apos;t bound to the whims of a single company.</p>
<h2>Progress</h2>
<p>Probably my biggest problem with proprietary software is the fact that everyone is having to reinvent the wheel. With free software, that which has already been developed can be reused, so development efforts can be put somewhere more productive. Hoarded knowledge has held us back so far. If people worked together instead of against one another, just imagine how much more technologically advanced we&apos;d be by now.</p>
END
);
